﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Data;

using MyLibrary.ThreeLayer.DataAccess.Enum;

namespace MyLibrary.ThreeLayer.DataAccess.Interface
{
    public interface IDbProvider : ITransaction, ICloseRequire
    {
        IDbDataAdapter CreateAdapter();
        IDbCommand CreateCommand();
        ISQLCommandBuilder<T> CreateCommandBuilder<T>() where T : class, new();
        IDataParameter CreateParameter();
        IDbConnection GetConnection();
        void OpenConnection(string connectionString);

        ProviderType ProviderType { get; }
    }
}
